/*
 * 
 * LegendShop 多用户商城系统
 * 
 *  版权所有,并保留所有权利。
 * 
 */
package com.legendshop.oa.constants;

import java.util.List;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import com.legendshop.oa.util.PropertiesUtil;
import com.legendshop.util.AppUtils;

/**
 * 
 * LegendShop 版权所有 2009-2011,并保留所有权利。
 * ----------------------------------------------------------------------------
 * 提示：在未取得LegendShop商业授权之前，您不能将本软件应用于商业用途，否则LegendShop将保留追究的权力。
 * ----------------------------------------------------------------------------
 * 官方网站：http://www.legendesign.net
 * ----------------------------------------------------------------------------
 */
public class ValidateFileProcessor {

	/** The log. */
	private static Logger log = LoggerFactory.getLogger(ValidateFileProcessor.class);

	/**
	 * 检查文件 大小 和 格式
	 */
	public static boolean validateFile(String fileName, long fileSize) {
		if ((fileSize < 0) || (fileSize > PropertiesUtil.getObject(SysParameterEnum.MAX_FILE_SIZE, Long.class) * 1024)) {
			return false;
		}
		String extName = null;
		try {
			extName = getFileExtName(fileName);
		} catch (Exception e) {
			log.warn("can not get file extName,maybe there is not a file! : " + e.getLocalizedMessage());
			return false;
		}
		List list = PropertiesUtil.getObject(SysParameterEnum.ALLOWED_UPLOAD_FILE_TPYE, List.class);
		if (list.contains(extName)) {
			return true;
		} else {
			return false;
		}
	}
	
	/**
	 * 获取文件的后缀名
	 */
	private static String getFileExtName(String fileName) {
		if (AppUtils.isBlank(fileName)) {
			return "";
		}
		return fileName.substring(fileName.lastIndexOf(".")).toLowerCase();
	}
}